package pe.com.cotelasa.scp.dominio.service;

import java.util.Collection;
import pe.com.cotelasa.scp.dominio.common.ResultadoServicio;
import pe.com.cotelasa.scp.dominio.common.ResultadoValidacion;
import pe.com.cotelasa.scp.dominio.excepcion.ServiceException;
import pe.com.cotelasa.scp.entidad.CuentaBancaria;

public interface IServicioCuentaBancaria {

    public Collection<CuentaBancaria> listarCuentaBancariasActivas() throws ServiceException;

    public CuentaBancaria conseguirCuentaBancariaPorId(Integer idCuentaBancaria) throws ServiceException;

    public Collection<CuentaBancaria> listarTodasCuentaBancarias() throws ServiceException;

    public ResultadoValidacion validarCuentaBancaria(CuentaBancaria cuentaBancaria) throws ServiceException;

    public ResultadoServicio guardarCuentaBancaria(CuentaBancaria cuentaBancaria) throws ServiceException;

    public ResultadoServicio actualizarCuentaBancaria(CuentaBancaria cuentaBancaria) throws ServiceException;

    public Collection<CuentaBancaria> listarCuentaBancariasPorFiltro(CuentaBancaria cuentaBancaria) throws ServiceException;

    public Collection<CuentaBancaria> listarCuentaBancariasPorEmpresa(Integer idEmpresa) throws ServiceException;
    
    public Collection<CuentaBancaria> listarCuentaBancariasPorEmpresa(Integer idEmpresa,Integer idBanco) throws ServiceException;
    
    public Collection<CuentaBancaria> listaCuentaBancariaPorIdBanco(Integer idBanco) throws ServiceException;
}
